/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package DAO;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
 *
 * @author Giovana
 */
public class ConectaBanco {
    
    Connection con = null;
    
    //o metodo cnstrutor será chamado quando um objeto for instanciado
    //a partir desta classe. Quando isso ocorrer, o metodo
    //carregarDriver será chamado
    
    public ConectaBanco(){
        carregarDriver();
    }
    
    public void carregarDriver(){
        try{
            Class.forName("com.mysql.jdbc.Driver");
            System.out.println("Driver Carregado");
        }catch (ClassNotFoundException e){
            System.out.println("O driver não pode ser carregado" + e.getMessage());
        }
    }
    
    //o metodo a seguir retorna um objeto Connection que possui
    //a conexão. Só será realizado a conezão caso o objeto 
    //seja nulo ou se a conexão estiver fechada. 
    public Connection obterConexao(){
        try{
            if ((con==null) || (con.isClosed())){
                con = DriverManager.getConnection("jdbc:mysql://localhost/consultorio", "root","");
            }
            System.out.println("Conectado com Sucesso");
        }catch(SQLException e){
            System.out.println("Erro: " + e.getMessage());
        }
        return con;
    }    
    
    public void fecharConexao(){
        try{
            if ((con==null) || (con.isClosed())){
                con.close();
                System.out.println("Conexão Encerrada");
            }    
        }catch(SQLException e){
            System.out.println("Erro: " + e.getMessage());
        }
    }
    
    //main para testar a conexao
    public static void main (String arg[]){
        ConectaBanco conecta = new ConectaBanco();
        conecta.obterConexao();
    }
}
